home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The CICA Windows Explosion!
/
The CICA Windows Explosion! - Disc 2.iso
/
programr
/
clgraph1.zip
/
CLUMSY.TXT
< prev
next >
Wrap
Text File
|
1993-09-02
|
6KB
|
141 lines
Clumsy C++ Graphics Libraries for Windows(TM)
The Clumsy C++ Graphics Libraries provide an object-oriented approach to
performing graphics in MS Windows 3.1(TM). The classes support all
Windows graphics capabilities with much improvement. All graphic
objects (lines, rectangles, ellipses, etc.) have been encapsulated in
classes and manipulation methods (transformation, scaling, rotation,
shading, etc.) added to them. Objects to be displayed in a window are
added to a coordinate system, and the window is assigned that coordinate
system. The window is the view of the given space. The viewpoint,
angle of view, and scaling of the view can be changed. Multiple views
can be created for a given space, each with its different viewpoint,
view angle, and scaling. Thus, the same space can be viewed from
different positions, different angles, and with different scaling simply
by creating a new window for that space with different parameters.
Not only do the classes provide a wide range of functions, but they also
shield the programmer from the complexities of the Windows API. The
programmer no longer has to worry about creating window classes,
registering them, handling the different event messages for the windows,
creating pens and brushes for drawing, setting view coordinates, etc.
All these are handled automatically by the different objects. To draw a
rectangle on the screen, the programmer simply has to type 2 lines: the
declaration of the rectangle object, and adding the rectangle to the
required space. The rectangle will be drawn automatically. The pen and
brush and other settings will be done implicitly by the rectangle object
whenever its Draw method is created. The programmer does not have to
worry about redrawing the rectangle whenever the window is moved or
resized. The rectangle will be redrawn automatically when the window is
repainted, or, in case buffering is enabled, the window will be painted
with a buffered bitmap that contains the image that is supposed to be on
the screen; this feature is important when drawing complex 3D objects
since redrawing them will take considerable time.
All graphic objects are derived from class VisualObject which contains
virtual functions for manipulating individual graphic objects
(transformation, scaling, rotation, shading, hidden-surface removal,
etc.). Each object is independent of others and of Windows. The only
instance when an object interacts with Windows is in its Draw method
which is supplied with the Windows device context on which the object
should be drawn. All classes are reusable and new classes can be
derived from them easily. ComplexGraphic is derived from VisualObject
and contains a list of other VisualObject objects. This allows dealing
with a bunch of graphic objects as a single object.
All libraries come with standard classes for encapsulating basic and
essential Windows functionality such as event handling and window
management.
The following is a general description of the available libraries:
2D Graphics Library
-------------------
C++ classes for defining, displaying, and manipulating graphics in a
two-dimensional coordinate system. Graphic objects include all the
graphics available in Windows (lines, rectangles, ellipses, pies, arcs,
etc.), text, bitmaps, and others. All objects can be transformed,
scaled, or rotated. Complex objects consisting of one or more graphic
objects can be defined and treated as a single graphic object. Multiple
views in separate windows can be defined on the same space of graphic
objects with different view points, view angles, or scaling parameters.
2D Graphics Kit
---------------
Graphics editor that allows the user to interactively create graphic
objects supported in the 2D Graphic Library and either save them as a
data file that can be loaded by a C++ program or generate the complete
C++ code that would display the created objects. Requires the 2D
Graphics Library.
3D Graphics Library
-------------------
C++ classes for defining, displaying, and manipulating graphics in a
three-dimensional coordinate system. Includes all the capabilities of
the 2D Graphics Library applied to 3D graphic objects with several other
capabilities that apply only to 3D objects such as hidden surface
removal, shading, and ray tracing.
3D Graphics Kit
---------------
Graphics editor that allows the user to interactively create graphic
objects supported in the 3D Graphic Library and either save them as a
data file that can be loaded by a C++ program or generate the complete
C++ code that would display the created objects. Requires the 3D
Graphics Library.
Animation Library
-----------------
C++ classes that define multiple-image sprites and motion to graphic
objects.
Animation Kit
-------------
Graphics editor that allows the user to interactively create sprites and
either save them as a data file that can be loaded by a C++ program or
generate the complete C++ code that would display the created objects.
Requires the Animation Library.
Windows Library
---------------
C++ classes that encapsulate a large subset of the Windows API.
Although most C++ compilers include their own libraries, this library
uses the same classes as the ones used in the previous libraries, and,
thus, provides a consistent programming environment.
Windows is a trademark of Microsoft Corporation.
Ordering Information:
--------------------
The libraries are available for the Borland C++ compiler. The cost of
each library is as follows:
Library .LIB .EXE Source Code
-----------------------------------------------------
2D Graphics Library $30 $75
2D Graphics Kit $40 $20 $100
3D Graphics Library $50 $250
3D Graphics Kit $50 $20 $150
Animation Library $40 $150
Animation Kit $50 $20 $150
Windows Library $100 $150
To order, send request with certified check or money order for the
correct amount to:
Clumsy Computing
P.O.Box 5181
Station B
Montreal, Quebec
CANADA H3B 4B5